package com.tqw.es.controller;

import com.tqw.entity.Result;
import com.tqw.entity.StatusCode;
import com.tqw.es.pojo.Item;
import com.tqw.es.service.ItemService;
import com.tqw.es.vo.ItemVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @author Jim
 */
@RestController
@RequestMapping("/es")
public class ItemController {
    @Autowired
    private ItemService itemService;

    /**
     * 新增商品
     * @param item 商品对象
     */
    @PostMapping("/saveItem")
    public Boolean save(Item item){
        itemService.save(item);
        return true;
    }

    /**
     * 修改商品
     * @param item 商品对象
     */
    @PutMapping("/updateItem")
    public Boolean update(Item item){
        itemService.update(item);
        return true;
    }

    /**
     * 删除商品
     * @param id 商品id
     */
    @DeleteMapping("/deleteItem/{id}")
    public Boolean deleteItem(@PathVariable Integer id){
        itemService.deleteById(id);
        return true;
    }

    /**
     * 获取所有存在的商品数据
     * @return 商品数据
     */
    @GetMapping("/getItemList")
    public Result<List<List<ItemVO>>> getItemList(){
        List<List<ItemVO>> itemVOList = itemService.getItemList();
        if (itemVOList==null) {
            return new Result<>(true, StatusCode.ERROR, "获取首页数据失败");
        }
        return new Result<>(true,StatusCode.OK,"成功",itemVOList);
    }
}
